package demo;
import java.util.HashMap;
import java.util.Map;
public class Solution {
    Map<Character,Integer> m=new HashMap<Character,Integer>(){
        {
            put('I',1);
            put('V',5);
            put('X',10);
            put('L',50);
            put('C',100);
            put('D',500);
            put('M',1000);
        }
    };
    //若是罗马数字小值在大值左边就就是加法，大值在小值左边就是相减
    public int romanToInt(String s) {
        int n=s.length();
        int ans=0;
        for(int i=0;i<n;i++){
            //遍历罗马字符串的每个字符
            int value=m.get(s.charAt(i));
            //取得字符对应的value
            if(i<n-1&&value<m.get(s.charAt(i+1))){
                //判断是否有两个字符并判断两个字符value大小关系
                ans=ans-value;
            }else{
                ans=ans+value;
            }
        }
        return ans;
    }
}
